package com.cci.kangdao.ecjv.controller;

import com.cci.kangdao.dto.BaseResponse;
import com.cci.kangdao.ecjv.dto.ECJVFaultCodeDto;
import com.cci.kangdao.ecjv.service.ECJVFaultCodeService;
import com.cci.kangdao.service.impl.SMSEnum;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.util.List;

/**
 * @description: 故障码信息
 * @author: 商伟
 * @company: CTY
 * @since: 2022/10/24 13:56
 * @version: V1.0
 **/
@RestController
@RequestMapping("/ecjvFaultCode")
public class ECJVFaultCodeController {

    @Resource
    private ECJVFaultCodeService ecjvFaultCodeService;

    /**
     * 根据故障码或spn，fmi 获取故障码信息
     * @param ecjvFaultCodeDto
     * @return
     */
    @RequestMapping(value = "getOneByFaultCode.aspx")
    public BaseResponse getList(ECJVFaultCodeDto ecjvFaultCodeDto) {
        if (StringUtils.isBlank(ecjvFaultCodeDto.getFaultCode()) && !(StringUtils.isNotBlank(ecjvFaultCodeDto.getFmi()) && StringUtils.isNotBlank(ecjvFaultCodeDto.getSpn()))) {
                return BaseResponse.error(SMSEnum.type17.getIndex(), "参数不能为空");
        }
        ECJVFaultCodeDto dto = ecjvFaultCodeService.getOneByFaultCode(ecjvFaultCodeDto);
        return BaseResponse.success(dto);
    }

    /**
     * 添加查询历史记录
     * @param content
     * @return
     */
    @RequestMapping(value = "insertQueryHistory.aspx")
    public BaseResponse insertQueryHistory(String content) {
        boolean success = false;
        if (StringUtils.isNotBlank(content)) {
            success = ecjvFaultCodeService.insertQueryHistory(content);
        }
        if(success){
            return BaseResponse.success();
        } else {
            return BaseResponse.error("添加失败");
        }
    }

    /**
     * 添查询历史记录 前十条
     * @param
     * @return
     */
    @RequestMapping(value = "getListByUserId.aspx")
    public BaseResponse getListByUserId() {
        List<String> list = ecjvFaultCodeService.getListByUserId();
        return BaseResponse.success(list);
    }

}
